package br.com.site.dao;

import javax.persistence.NoResultException;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import br.com.caelum.vraptor.ioc.Component;
import br.com.site.pojo.Usuario;

@Component
public class UsuarioDAO {
	private final Session session;

	public UsuarioDAO(Session session) {

		this.session = session;
	}

	public void adiciona(Usuario usuario) {

		Transaction tx = session.beginTransaction();
		session.save(usuario);
		tx.commit();

	}

	public boolean autentica(Usuario usuario) {

		try {
			String hql = "from Usuario where nome = :nome and senha = :senha";
			Query q = this.session.createQuery(hql);
			q.setParameter("nome", usuario.getNome());
			q.setParameter("senha", usuario.getSenha());

			Usuario user = (Usuario) q.uniqueResult();
			if (user != null) {

				return true;
			}
			return false;
		} catch (NoResultException e) {
			// TODO: handle exception]
			System.out.println("nao achou");
			return false;
		}
	}
}
